package leetcode.offer;

import org.junit.Test;

/**
 * @author LiDong
 * @version 1.0.0
 * @createTime 2021/11/25 8:30
 */
public class offer21 {

    /**
     * 输入一个整数数组，实现一个函数来调整该数组中数字的顺序，使得所有奇数在数组的前半部分，所有偶数在数组的后半部分。
     */


    @Test
    public void test() {
        int[] nums = {1, 2, 3, 4};
        for (int i : exchange(nums)) {
            System.out.println(i);
        }

    }


    public int[] exchange(int[] nums) {
        int i = 0, j = nums.length - 1;
        int temp;
        while (i < j) {
            while (i < j && (nums[i] & 1) == 1) {
                i++;
            }
            while (i < j && (nums[j] & 1) == 0) {
                j--;
            }
            temp = nums[j];
            nums[j] = nums[i];
            nums[i] = temp;
        }
        return nums;
    }

}
